﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using Sociedad.BL;
using Sociedad.DAL;
public partial class SiteMaster : System.Web.UI.MasterPage
{
    MenuBL blMenu = new MenuBL();

    protected void Page_Load(object sender, EventArgs e)
    {
        if (!Page.IsPostBack)
        {
            lblEntidad.Text = Session[Constantes.session_AbrTipUO].ToString() + " - " + Session[Constantes.session_NomUniOrg].ToString();
            lblUserName.Text = Session[Constantes.session_NomUsuario].ToString();
            lblUserRolDescripcion.Text = Session[Constantes.session_NomRol].ToString();
            lblFecActual.Text =  string.Format("{0:D}", DateTime.Now);

            CargarMenu();
        }
    }

    private void CargarMenu()
    {
        List<vw_Listar_OpcionesMenuUsuario> lstMenu = new List<vw_Listar_OpcionesMenuUsuario>();
        List<vw_Listar_OpcionesMenuUsuario> lstMenuPrin = new List<vw_Listar_OpcionesMenuUsuario>();
        List<vw_Listar_OpcionesMenuUsuario> lstMenuSec = new List<vw_Listar_OpcionesMenuUsuario>();

        lstMenu = blMenu.Listar_OpcionesMenuUsuario(Session[Constantes.session_CodUsuario].ToString());

        if (lstMenu.Count > 0)
        {
            mnuPrincipal.Items.Clear();

            var menuPrin = from lista in lstMenu
                           where lista.ParentID == "0"
                           select lista;
            lstMenuPrin = menuPrin.ToList();
            foreach (vw_Listar_OpcionesMenuUsuario opcion in lstMenuPrin)
            {
                mnuPrincipal.Items.Add(new MenuItem(opcion.MenuName, opcion.MenuID, "", opcion.MenuLocation));
            }

            var menuSec = from lista in lstMenu
                          where lista.ParentID != "0"
                          orderby lista.MenuID
                          select lista;
            lstMenuSec = menuSec.ToList();
            foreach (vw_Listar_OpcionesMenuUsuario opcion in lstMenuSec)
            {
                MenuItem mnu = new MenuItem(opcion.MenuName, opcion.MenuID, "", opcion.MenuLocation);
                mnuPrincipal.FindItem(opcion.ParentID).ChildItems.Add(mnu);
            }
        }

    }

}
